import java.util.ArrayList;
import java.util.List;

public class Test3 {
    public static void main(String[] args) {

    }
    public static List<List<Integer>> generate(int n) {
        //杨辉三角形
        //首先确定起初的数1
        List<Integer> inner = new ArrayList<>();
        inner.add(1);
        List<List<Integer>> outer = new ArrayList<>();
        outer.add(inner);
        //从第二行开始 进入规律
        //第一位和最后一位确定是1 中间的其余数字为上一行两数相加
        for(int i = 1;i < n;i++) {
            List<Integer> curNum = new ArrayList<>();
            curNum.add(1);
            //中间的单独算
            List<Integer> temp = outer.get(i - 1);
             for(int j = 1;j < i;j++){
                 int x = temp.get(j-1) + temp.get(j);
                 curNum.add(x);
             }

            curNum.add(1);
            outer.add(curNum);
        }
        return outer;
    }
}